package cn.itrip.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Setter;
import lombok.Getter;

/**
 * 订单表
 * @auth chendd
 * @date 2020/12/25 08:58
 */
@Setter
@Getter
@ApiModel
@TableName("itrip_hotel_order")
public class ItripHotelOrder {

    @TableField("id")
    @ApiModelProperty(value = "主键")
    private Long id;

    @TableField("userId")
    @ApiModelProperty(value = "用户id")
    private Long userId;

    @TableField("orderType")
    @ApiModelProperty(value = "订单类型(0:旅游产品 1:酒店产品 2：机票产品)")
    private Integer orderType;

    @TableField("orderNo")
    @ApiModelProperty(value = "订单号")
    private String orderNo;

    @TableField("tradeNo")
    @ApiModelProperty(value = "交易编号")
    private String tradeNo;

    @TableField("hotelId")
    @ApiModelProperty(value = "冗余字段 酒店id")
    private Long hotelId;

    @TableField("hotelName")
    @ApiModelProperty(value = "冗余字段 酒店名称")
    private String hotelName;

    @TableField("roomId")
    @ApiModelProperty(value = "房间id")
    private Long roomId;

    @TableField("count")
    @ApiModelProperty(value = "消耗数量")
    private Integer count;

    @TableField("bookingDays")
    @ApiModelProperty(value = "预订天数")
    private Integer bookingDays;

    @TableField("checkInDate")
    @ApiModelProperty(value = "入住时间")
    private java.util.Date checkInDate;

    @TableField("checkOutDate")
    @ApiModelProperty(value = "退房时间")
    private java.util.Date checkOutDate;

    @TableField("orderStatus")
    @ApiModelProperty(value = "订单状态（0：待支付 1:已取消 2:支付成功 3:已消费 4：已点评）")
    private Integer orderStatus;

    @TableField("payAmount")
    @ApiModelProperty(value = "支付金额")
    private Double payAmount;

    @TableField("payType")
    @ApiModelProperty(value = "支付方式:1:支付宝 2:微信 3:到店付")
    private Integer payType;

    @TableField("noticePhone")
    @ApiModelProperty(value = "联系手机号")
    private String noticePhone;

    @TableField("noticeEmail")
    @ApiModelProperty(value = "联系邮箱")
    private String noticeEmail;

    @TableField("specialRequirement")
    @ApiModelProperty(value = "特殊需求")
    private String specialRequirement;

    @TableField("isNeedInvoice")
    @ApiModelProperty(value = "是否需要发票（0：不需要 1：需要）")
    private Integer isNeedInvoice;

    @TableField("invoiceType")
    @ApiModelProperty(value = "发票类型（0：个人 1：公司）")
    private Integer invoiceType;

    @TableField("invoiceHead")
    @ApiModelProperty(value = "发票抬头")
    private String invoiceHead;

    @TableField("linkUserName")
    @ApiModelProperty(value = "入住人名称")
    private String linkUserName;

    @TableField("bookType")
    @ApiModelProperty(value = "0:WEB端 1:手机端 2:其他客户端")
    private Integer bookType;

    @TableField("creationDate")
    @ApiModelProperty(value = "预定时间")
    private java.util.Date creationDate;

    @TableField("createdBy")
    @ApiModelProperty(value = "")
    private Long createdBy;

    @TableField("modifyDate")
    @ApiModelProperty(value = "支付完成时间")
    private java.util.Date modifyDate;

    @TableField("modifiedBy")
    @ApiModelProperty(value = "")
    private Long modifiedBy;

}
